This invention relates to a register control system in a data processing system, and more specifically to a register control system which, in case a control register is newly defined or a control register originally intended to be used for a particular purpose is to be used for another purpose, provides these control registers "on the memory" (namely, as "virtual" registers, as is explained below to mean storage space is provided at respective addresses in the memory) without relation to the mounting condition on the hardware (that is, as compared to a "real" register implemented by hardware as explained below) and thereby executes control register operations as if they were actually provided in this system as respective hardware.
A central processing unit CPU of a certain architecture is capable of designating, for example, 16 control registers in total, each of which is composed of 32 bits. Each bit of these registers is used for indicating a state occurring during operation or for providing special data for attaining a certain function. However, in practice, in a particular model of a particular type of CPU, only the registers necessary for the functions defined initially will be mounted. For this reason, when it is required for expansion of functions or for compatibility with other types of system, the hardware must be modified for each requirement, including, for example, addition of registers. But modification of hardware is economically disadvantageous. Moreover, as described above, the control registers already defined are required in some cases to be used for other purposes. For example, in case a certain control register used for a certain purpose in a certain system is used for another purpose in another system, if the former system is required for compatibility with the latter system, the one register must be used in both ways for two different purposes as required. This problem can no longer be solved as a problem of hardware.